Wireless communication systems are well known in the prior art. In state-of-the-art multi-user systems, it is common to have multiple users communicate with a common base station where communication signals are transmitted in selectively defined timeslots of system time frames, or radio frames. In the systems specified in the Third Generation Partnership Project (3GPP), base stations are referred to Node Bs and a user communicates with a Node B via a User Equipment (UE). A standard 3GPP system radio frame has a duration of ten milliseconds and is divided into multiple timeslots which are selectively allocated for transmission and reception of communication signals. Transmissions from a Node B to UEs are commonly referred to as Downlink (DL) transmissions and transmissions from UEs to a Node B are commonly referred to as Uplink (UL) transmissions.
Timing deviation arises due to the fact that wireless communication signals are not instantaneous. Although traveling at the speed of light, there is a measurable amount of time between transmission of a signal and its reception. That time is directly related to the distance of the signal travels and for mobile users, that time will change as a mobile UE moves if the distance from the mobile UE to a Node B changes. The travel time of communication signals needs to be taken into account in order for UL and DL communications to be maintained in designated timeslots and other time windows within system time frames.
As currently specified for 3GPP systems, a radio network is composed of one or more mobile terminals or user equipment (UE), and a UMTS Terrestrial Radio Access Network (UTRAN). The UTRAN includes cells, Node-B's for handling the radio interface in a group of one or more cells, and Radio Network Controllers (RNCs) which controls activity within the radio network. A connection through the UTRAN involves routing through one or more RNC, a Node-B, and a cell. The role played by an RNC depends upon its relative position in the connection of a particular UE to the UTRAN. These roles are Serving RNC (SRNC), Drift RNC (DRNC), and Controlling RNC (CRNC). The SRNC is in charge of the radio link between the UTRAN and the UE. The software entities of the SRNC are found within the RNC through which the connection originated (or an RNC selected through the relocation process). The software components within the DRNC provide radio resources to remote SRNC components. The CRNC controls the logical resources of its Node-B's. When a connection is established, its SRNC and CRNC are co-located within the same RNC. In this case, no DRNC exists. If the connection is handed over from one (original) RNC to another (new), the SRNC functionality exists on the original RNC and the DRNC and CRNC functionalities exist on the new RNC. Additional architectural overview may be found in TS 25.401 V3.3.0.
In a 3GPP system, a Time Division Duplex (TDD) radio frame is composed of intermixed UL and DL timeslots in which communication signals in the form of UL and DL bursts are transmitted. A clocking signal for a cell is broadcast on a Synchronization Channel (SCH) by a Node B and defines the Node B's frame of reference with which downlink bursts are synchronized. The UE derives its cell timing from the received SCH signal, delayed by the Node B-UE one-way propagation time. Nominally, with no Timing Advance applied, the UE begins an UL burst at the start of an UL timeslot with respect to its own frame of reference. If there were zero propagation delay, i.e. instantaneous communication, the start of that UL burst would be received at the Node B at exactly the start of the UL timeslot at the Node B's frame of reference. This is depicted in FIG. 1a. 
Since it does in fact takes some time for the transmitted signals to travel to the receiver, there is a propagation delay. Accordingly, the UE derived clock, which defines the UE's frame of reference, is delayed from the reference clock in the Node B by the one-way propagation time. In the nominal case of the UE starting an UL burst at the start of an UL timeslot in its own frame of reference, which is already delayed with respect to the Node B's frame of reference, the burst is received at the Node B delayed by the Node B-UE two-way propagation time. This is depicted in FIG. 1b from the Node B's frame of reference.
If the UL bursts shown in FIG. 1b arrive at the Node B beyond some time window, they may not be detected; if they are detected, they maybe be received with degraded quality. Timing Advance means that the UE sends its UL bursts earlier than it otherwise would, i.e., before the start of an UL timeslot in the UE's frame of reference, such that its UL bursts are received at the Node B within that time window in order to facilitate detection and minimize or eliminate signal degradation. With a Timing Advance adjustment that exactly compensates for the two-way propagation delay, the UL and DL bursts are, at the Node B's frame of reference, as reflected in FIG. 1a. Note that the system utilizes a guard period GP so that it can still function if the Timing Advance adjustment does not exactly compensate for the two-way propagation delay.
Timing Advance is conventionally determined with respect to the Node B's frame of reference based on the difference in timing of the received UL burst and the timeslot for which it is designated which is known as Timing Deviation. Because the propagation delay is a function of the travel time of the communication signal, it can change during the course of a communication. This is quite often the case with mobile UEs which change location while being used. Accordingly, after a timing advance is initially set it needs to be adjusted based on changes in Timing Deviation.
Nominally, the amount of Timing Advance is determined in a Radio Network Controller (RNC) associated with the Node B and signaled to the UE. When handing over to a new cell which supports Timing Advance, the UE either 1) autonomously determines the amount of timing advance to use in the new cell or 2) applies no Timing Advance in the new cell if it temporarily utilizes a timeslot which, because of a larger than nominal guard period, is more tolerant of large timing deviations. Once handover is complete, the nominal procedure applies. For the non-handover case, Timing Advance is preferably controlled by a closed loop between the UE, Node B and RNC, as follows:                1. Uplink bursts are received at Node B.        2. Node B measures the Timing Deviation of the received bursts, generally once per frame.        3. Node B reports (non-zero) Timing Deviation measurements to the RNC.        4. From the Timing Deviation measurements, the RNC initially determines or updates the amount of Timing Advance the UE shall apply.        5. The RNC signals, via the Node B, to the UE the amount of Timing Advance to apply. Updates are sent only infrequently.        6. The UE applies the signaled amount of Timing Advance.        
In a 3GPP system, the timing deviation measurement is the estimate of the difference in time between when the start of an UL burst is received in a Node B and the start time of its timeslot. Because of multipath, the first chip of a burst can, in effect, arrive at multiple times, the time of the earliest received instance of the UL burst forms the basis of the timing deviation measurement. The UE transmission timing is adjusted with timing advance. The initial value for timing advance is preferably determined by measurement of the timing of a Physical Random Access Channel (PRACH).
Communication transmission bursts in 3GPP systems are specified to contain an identifying midamble. The midamble is used for channel estimation and from this the timing deviation measurement is conventionally made. Usually there is one timing deviation measurement per UE per frame. Thus, for a Dedicated Channel (DCH) having multiple midambles per frame, either one channel response must be selected for the timing deviation measurement or several or all channel responses integrated and a single timing deviation measurement derived.
An uplink burst is “found” by a conventional Channel Estimation function using the Steiner algorithm which, in effect, searches within a time window for the midamble of the burst. Since the start of the midamble is a fixed distance from the start of the burst, detecting the start of the midamble is equivalent to detecting the start of the burst
Multipath in the propagation channel causes numerous reflections or instances of the burst to be received with various delays; the midambles of these delayed reflections are also detected. The position of the earliest instance of the burst within the detection window forms the basis of the Timing Deviation measurement.
The current 3GPP standard inconsistently refers to “Timing Deviation” as both a measured quantity accurate to ±½ chip accuracy and resolution of ¼ and a signaled quantity with resolution of four chips. To distinguish these, “Timing Delay” is sometimes used to refer to the measurement itself and then “Timing Deviation” is used to refer to the signaled measurement.
The concept of the detection window is derived from the Steiner channel estimation algorithm, a correlator-like algorithm which yields the time of a midamble detection. FIG. 2 shows five examples of midambles at increasing points in time with respect to the correlator extent. Shown is the parameter notation of the 3GPP standard and numerical examples of these parameters in parentheses for the case of a 3GPP Burst Type 1 which permits eight midamble shifts, KCELL=8. The midamble shifts enable multiple UEs to transmit to a Node B in the same timeslot. The Steiner algorithm process enables each UE's signals to be separated from the others based on the shift of that UE's midamble and allows for the Timing Delay measurement of any given received midamble, provided two UE's are not using the same midamble shift at the same time. Accordingly, the five examples illustrated could represent different instances of received signals from one particular UE depending on the two-way propagation distance and the amount of applied Timing Advance.
In FIG. 2a, the midamble denoted (1) occurs before the correlator start and is only partially within the correlator extent, the midambles denoted (2) through (4) are fully within the correlator extent and the midamble denoted (5) is, as is midamble (1), only partially within the correlator extent. FIG. 2b depicts the superposition of the ideal channel responses to these five midambles. Midamble (2) results in an impulse at the start of the channel estimation output, midamble (3) results in an impulse in the middle and midamble (4) results in an impulse at the end. Midambles (1) and (5), being not fully contained within the correlator extent, yield nothing in the channel response of the proper midamble shift; dashed lines represent where they appear in the channel responses for adjacent midamble shifts.
FIG. 2a illustrates that a midamble starting at any one of the first W(57) chip positions results in a corresponding impulse in the channel response, since the entire midamble is detected within the correlator extent. This is what is referred to as the detection window. Note that by utilizing this concept, the actual midamble length is not needed in the analysis of midamble arrival time and the window can be viewed as that time within which the start of the midamble occurs or arrives. Since the midamble is always a fixed number of chips from the start of the burst, by finding the start position, i.e. start time, of the midamble, the arrival time of the start of the burst becomes known. Although these two arrival times are clearly different, they are often referenced interchangeably due to their direct correlation with each other.
Detection windows are the time periods in which a single instance of the Steiner algorithm searches for midambles. The Steiner algorithm searches for the start of K midambles (in actuality, K distinct circular shifts of one midamble code) within a given temporal detection window. The size of the detection window is a function of burst type and whether extended midambles are enabled. Literally, the “detection” window extent includes the midamble length, but for the purpose of Timing Deviation it is easier to think of the window as being that in which the start of the midamble may occur.
A midamble starting anywhere within the length-W detection window will yield, in the absence of noise and interference, a detection with energy proportional to the square of the length correlator (K×W) for its midamble shift k. A midamble start occurring (even one chip) before the start of the window or W or more chips after the start of the detection window will yield no detection of midamble shift k, and instead will result in a detection of midamble shift k−1 or k+1.
The length of the Detection Windows is a function of midamble length and maximum number of midamble shifts. Various examples for 3GPP specified bursts are given in Table 1.
TABLE 1Detection Window and Midamble LengthsChannelResponse andMaximumDetectionNumber ofMidambleWindowBurstMidambleLength, Lm,Length, W,TypeShifts, Kchipschips185125711651228 or 292325664262563234512114 
Note that for the case of Burst Type 1, K=16, the Detection Window size is given as “28/29.” This is because of an anomaly of the midamble shift allocation scheme inherent to the Steiner algorithm, in which the first eight midamble shifts (k=1 through 8) have channel responses of 29 chips and the second eight (k=9 through 16) have channel responses of 28 chips.
A simplified example of determining the Timing Delay measurement from the channel estimate is given in FIG. 3 which shows the magnitude-square of a complex channel estimate for a kth one of the K shifted midambles output from the Steiner algorithm. Note that a practical implementation can use an approximation for the magnitude square, e.g. sum(max(1,Q)+min(1,Q)/2). The horizontal axis of the X-Y plot represents the time duration of the detection window. Depicted are three impulses crossing a threshold based on some ambient noise level. These three impulses are detections of three instances of the kth midamble shift.
The distance of each impulse from the left edge of the window is the start time of the midamble shift instance with respect to the start time of the detection window, or the time offset; the height shows the energy attributed to the midamble shift. Note that the start of the window is not necessarily the start of the uplink timeslot. The leftmost impulse is the earliest of the three and thus its time offset is used for the Timing Deviation measurement.
In the example shown in FIG. 3, a later detection is received with more energy than the earliest one, whose time is tagged as tdelay. The relative energies of the detections are not a factor; that an energy measurement of the channel estimate crosses the threshold is sufficient.
Preferably, the Node B receiver operates at 2× oversampling, i.e., sampling at twice the chip rate or a sampling period of one-half chip. The Channel Estimation function takes the half-chip sampled sequence and separates it into two (alternating even and odd) chip-rate sequences, each of which is separately input to an instance of the Steiner algorithm. This results in two length-K×W channel estimates per burst. Conceptually, i.e., not necessarily physically, the two channel estimates can be interleaved to form one length-2KW, half-chip sampled channel estimate, and used to compute Timing Deviation. Using the half-chip channel estimate, the Timing Deviation can easily be determined to the desired accuracy and the precision of current 3GPP standards. These functions are depicted in FIG. 4.
Because of the 2× oversampling, a single instance of a midamble in the magnitude-squared interleaved channel estimate will appear not as a single line as depicted in FIG. 3, but as a pulse with some time extent whose shape is related to the root raised cosine chip pulse. FIG. 5 shows an example of the magnitude-squared interleaved channel estimate for a propagation channel similar to that shown in FIG. 3. As in FIG. 3, the distinct pulses, or clusters, in FIG. 5 represent multipath reflections that are many chips apart. Standard propagation models currently used by Working Group 4 (WG4) generally have multipath reflections at single-chip distances. In these cases, the response is the coherent sum of partially overlapped pulses. An example of this is depicted as the response in FIG. 6, in which the individual pulses cannot be resolved.
If receiver diversity is used in the Node B, there are, in effect, two instances of the receiver shown in FIG. 4. The simplest scheme for measuring timing deviation given in a diversity receiver is to simply employ two instances of the algorithms for each of the two receivers and choose the earlier measurement to report as timing deviation.
Measuring timing offset using the interleaved channel response requires identifying the earliest midamble detection, noting its time offset and, if necessary, refining the measurement to the required precision. When these steps have been completed, the final Timing Deviation measurement is formed.
The first step in measuring time offset from the interleaved channel estimate is identical to that in the simplified (non-interleaved) example described above, e.g., find the earliest midamble shift instance above the threshold and note its timing offset. Once found, it is tagged as tdelay. This is depicted in FIG. 7. To avoid applying too much Timing Advance, the measurement is preferably be rounded-down.
In 3GPP systems, the full range of the Timing Deviation measurement is ±256 chips as set forth is TS25.427 V4.4.0 sect 6.3.3.7 and TS 25.435 V4.4.0 sect 6.2.7.6. The possible “negative” value and the extent significantly exceeds the width of the largest detection window, which is 64 chips. Negative Timing Deviation means that a burst is being received before the start of the timeslot. This occurs when too much Timing Advance is applied by a UE for UL bursts. To measure negative Timing Deviation, either the detection window must start before the start of the timeslot, or an additional search must be performed before the time of the search which begins at the start of the timeslot.
The above description of the Timing Deviation measurement assumes a single timing offset measurement from a single channel estimate. In 3GPP systems, however, there are several cases in which there are multiple opportunities to measure timing offset which must yield one Timing Deviation measurement. One value of Timing Deviation for dedicated channels (DCHs) of one connection is reported once per radio frame per TS25.427 V4.4.0 sect 5.6, but there are many measurement opportunities of timing delay per radio frame: the UE can, theoretically, transmit one or two midambles per UL timeslot in up to 13 UL timeslots per frame, or 26 such opportunities. There are several possible schemes for creating one Timing Deviation measurement from the possibly many opportunities:                1. Choose just one of the many opportunities.        2. Make the up to 26 independent measurements of timing delay and combine them with some function, possibly picking the minimum or the average value.        3. For two midambles per timeslot, coherently combine the two channel estimates and make one measurement of timing delay, and choose the minimum timing delay for the up to 13 UL timeslots, as in 1) above        4. Coherently combine the up to 26 channel estimates and make a single measurement of timing delay.        
Performance of the schemes can be determined by simulation study, although experience suggests that coherent combination is the preferred scheme.
The threshold depicted in FIG. 5 and FIG. 6 plays the crucial role for measuring the timing deviation. The Channel Estimation Post-Processing function detects midambles using a CFAR-type threshold. Conventionally this threshold is based on an interference noise estimate. The working assumption for Post Processing is that the nominal value of the threshold should correspond to a 10−2 False Alarm rate (FAR). However, it is not clear that the 10−2 FAR threshold value allows the Timing Deviation algorithm to meet the “90% of the time” accuracy requirement specified in TS 25.123. V4.4.0 sect 9 for the Timing Deviation measurement.
A 10−2 FAR threshold means that, on average, approximately one out of every two to four (depending on W) channel estimates will contain one false detection of a midamble along with however many true detections there are. However, a false detection will only result in an incorrect timing deviation measurement if it occurs before the true first detection; this reduces the above cite rate of incorrect timing deviation reports. Reducing the distance between the Timing Advance setpoint and the left edge of the window, further reduces that rate. An intuitive guess is that the 10−2 FAR rate is probably acceptable.
Applicants' have discovered that a variable threshold which is set depending on the channel energy improves the detection performance significantly. In the oversampled case, each path yields an RRC shaped response. If there is a true path, then two out of three consecutive samples should be above the threshold. The sample location that contains the maximum energy out of three samples is declared as a true timing delay.